package com.lzy.validator;

import javax.validation.Constraint;
import javax.validation.Payload;
import java.lang.annotation.*;

/**
 * description: 字符串最大最小校验 <br>
 * date: 2023/11/12 下午10:27 <br>
 * author: lcc <br>
 * version: 1.0 <br>
 */
@Target( {ElementType.PARAMETER, ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy = StringMinMaxValidator.class)
@Documented
public @interface StringMinMaxConstraint {
    /** 异常提示信息 */
    String message() default "";

    /**
     * 最小长度
     * @return
     */
    int min() default 0;

    /**
     * 最大长度
     * @return
     */
    int max() default 0;

    /** 默认配置 - 不加要报错 */
    Class<?>[] groups() default {};

    /** 默认配置 - 不加要报错 */
    Class<? extends Payload>[] payload() default {};
}
